-- @Author: 作者QQ381990860
-- @Date:   2022-05-24 19:45:00
-- @Last Modified by:   作者QQ381990860
-- @Last Modified time: 2022-09-23 20:31:31
local 成长之路 = class(窗口逻辑)
local 资源,按钮,自适应
function 成长之路:初始化(根)
    self.ID = 414
    self.x = 315
    self.y = 100
    self.xx = 0
    self.yy = 0
    self.注释 = "成长之路"
    self.可视 = false
    self.鼠标 = false
    self.焦点 = false
    self.可移动 = true
    资源 = tp.资源
    按钮 = tp._按钮
    自适应 = tp._自适应
    self.窗口时间 = 0
    tp = 根
    self.资源组={}
    self.类型组={
        [1]=按钮.创建(自适应.创建(11,4,72,20,1),0,0,4,true,true,"全民集卡"),
        [2]=按钮.创建(自适应.创建(11,4,72,20,1),0,0,4,true,true,"--------"),
        [3]=按钮.创建(自适应.创建(11,4,72,20,1),0,0,4,true,true,"全民集字"),
        [4]=按钮.创建(自适应.创建(11,4,72,20,1),0,0,4,true,true,"CDK兑换"),

    }
    self.类型组[4]:置偏移(-1,-2)
    for n=1,3 do
        self.类型组[n]:绑定窗口_(414)
        if n~=1 then
           self.类型组[n]:置偏移(0,-1)
        end
    end
end
function 成长之路:资源加载(数据)
    数据 = 数据 or {}
    self.类型=数据.类型 or "CDK兑换"
    self.数据=数据
    self.加载资源=nil
    if self.类型=="CDK兑换" then
        self.资源组 = {
            [1] = 自适应.创建(0,1,352,92,3,9),
            [2] = 按钮.创建(自适应.创建(11,4,62,20,1),0,0,4,true,true,"确定充值"),
            [3] = 按钮.创建(自适应.创建(11,4,62,20,1),0,0,4,true,true,"购买卡密"),
            [4] = 自适应.创建(11,1,150,20,1,3),
        }
        for n=2,3 do
            self.资源组[n]:置偏移(-4,-1)
            self.资源组[n]:绑定窗口_(414)
        end
        self.控件类 = require("ggeui/加载类")()
        local 总控件 = self.控件类:创建控件('商店总控件')
        总控件:置可视(true,true)
        self.输入框 = 总控件:创建输入("数量输入",94,12+1*30,145,14)
        self.输入框:置限制字数(20)
        self.输入框:置光标颜色(-16777216)
        self.输入框:置文字颜色(-16777216)
        self.输入框:置文本("")
        self.输入框:置可视(true,true)
        self.输入框:置焦点(true)
    elseif self.类型=="全民集卡"  then
        self.资源组 = {
            [1] = 自适应.创建(0,1,352,421,3,9),
            [2] = 自适应.创建(70,1,340,76,3,9),--5
            [3] = 自适应.创建(9,1,330,66,3,9),--5 --330+11=341-5=336 336-50 = 286
            [4] = 资源:载入('JM.dll',"网易WDF动画",0x284B91F0),
            [5] = 按钮.创建(自适应.创建(11,4,42,20,1),0,0,4,true,true,"兑换"),
            [6] = 按钮.创建(自适应.创建(11,4,42,20,1),0,0,4,true,true,"兑换"),
            [7] = 按钮.创建(自适应.创建(11,4,42,20,1),0,0,4,true,true,"兑换"),
            [8] = 按钮.创建(自适应.创建(11,4,42,20,1),0,0,4,true,true,"兑换"),
            [9] = 资源:载入('JM.dll',"网易WDF动画",0xD2FFEE78),
            [10] = 资源:载入('JM.dll',"网易WDF动画",0xDF8E3A35),
        }
        self.加入=0
        self.集字类型={}
        self.集字类型[1]={
             [1]=tp._物品格子.创建(0,0,i,nil)
        }
        self.集字类型[1][1]:置物品({名称="梦",数量=self.数据.卡片.梦})
        self.集字类型[2]={
             [1]=tp._物品格子.创建(0,0,i,nil),
        }
        self.集字类型[2][1]:置物品({名称="幻",数量=self.数据.卡片.幻})
        self.集字类型[3]={
             [1]=tp._物品格子.创建(0,0,i,nil),
        }
        self.集字类型[3][1]:置物品({名称="西",数量=self.数据.卡片.西})
        self.集字类型[4]={
             [1]=tp._物品格子.创建(0,0,i,nil),
        }
        self.集字类型[4][1]:置物品({名称="游",数量=self.数据.卡片.游})
        self.集字类型[5]={
             [1]=tp._物品格子.创建(0,0,i,nil),
             [2]=tp._物品格子.创建(0,0,i,nil),
        }
        self.集字类型[5][1]:置物品({名称="梦",数量=self.数据.卡片.梦})
        self.集字类型[5][2]:置物品({名称="幻",数量=self.数据.卡片.幻})
        self.集字类型[6]={
             [1]=tp._物品格子.创建(0,0,i,nil),
             [2]=tp._物品格子.创建(0,0,i,nil),
        }
        self.集字类型[6][1]:置物品({名称="西",数量=self.数据.卡片.西})
        self.集字类型[6][2]:置物品({名称="游",数量=self.数据.卡片.游})
        self.集字类型[7]={
             [1]=tp._物品格子.创建(0,0,i,nil),
             [2]=tp._物品格子.创建(0,0,i,nil),
             [3]=tp._物品格子.创建(0,0,i,nil),
             [4]=tp._物品格子.创建(0,0,i,nil),
        }
        self.集字类型[7][1]:置物品({名称="梦",数量=self.数据.卡片.梦})
        self.集字类型[7][2]:置物品({名称="幻",数量=self.数据.卡片.幻})
        self.集字类型[7][3]:置物品({名称="西",数量=self.数据.卡片.西})
        self.集字类型[7][4]:置物品({名称="游",数量=self.数据.卡片.游})
        --
        self.集字奖励={}
        for n=1,5 do
            self.集字奖励[n]={[1]=tp._物品格子.创建(0,0,i,nil),}
        end
        self.集字奖励[1][1]:置物品({名称="银币礼包",数量=1})
        --self.集字奖励[1][1]:置物品({名称="高级内丹碎片",数量=1})
        self.集字奖励[2][1]:置物品({名称="高级内丹碎片",数量=1})
        self.集字奖励[3][1]:置物品({名称="特赦令牌",数量=1})
        self.集字奖励[4][1]:置物品({名称="玲珑宝图",数量=1})
        self.集字奖励[5][1]:置物品({名称="修炼果",数量=1})
        self.集字奖励[6]={[1]=tp._物品格子.创建(0,0,i,nil),[2]=tp._物品格子.创建(0,0,i,nil)}
        self.集字奖励[7]={[1]=tp._物品格子.创建(0,0,i,nil)}

        self.集字奖励[6][1]:置物品({名称="神兜兜",数量=5})
        self.集字奖励[6][2]:置物品({名称="神兜兜",数量=5})

        self.集字奖励[7][1]:置物品({名称="灵兜兜",数量=10})


    elseif self.类型=="全民集字" then
        self.资源组 = {
            [1] = 自适应.创建(0,1,352,421,3,9),
            [2] = 自适应.创建(70,1,340,76,3,9),--5
            [3] = 自适应.创建(9,1,330,66,3,9),--5 --330+11=341-5=336 336-50 = 286
            [4] = 资源:载入('JM.dll',"网易WDF动画",0x284B91F0),
            [5] = 按钮.创建(自适应.创建(11,4,42,20,1),0,0,4,true,true,"兑换"),
            [6] = 按钮.创建(自适应.创建(11,4,42,20,1),0,0,4,true,true,"兑换"),
            [7] = 按钮.创建(自适应.创建(11,4,42,20,1),0,0,4,true,true,"兑换"),
            [8] = 按钮.创建(自适应.创建(11,4,42,20,1),0,0,4,true,true,"兑换"),
            [9] = 资源:载入('JM.dll',"网易WDF动画",0xD2FFEE78),
            [10] = 资源:载入('JM.dll',"网易WDF动画",0xDF8E3A35),
        }
        self.加入=0
        self.集字类型={}
        self.集字类型[1]={
             [1]=tp._物品格子.创建(0,0,i,nil)
        }
        self.集字类型[1][1]:置物品({名称="梦",数量=self.数据.卡片.梦})
        self.集字类型[2]={
             [1]=tp._物品格子.创建(0,0,i,nil),
        }
        self.集字类型[2][1]:置物品({名称="幻",数量=self.数据.卡片.幻})
        self.集字类型[3]={
             [1]=tp._物品格子.创建(0,0,i,nil),
        }
        self.集字类型[3][1]:置物品({名称="西",数量=self.数据.卡片.西})
        self.集字类型[4]={
             [1]=tp._物品格子.创建(0,0,i,nil),
        }
        self.集字类型[4][1]:置物品({名称="游",数量=self.数据.卡片.游})
        self.集字类型[5]={
             [1]=tp._物品格子.创建(0,0,i,nil),
             [2]=tp._物品格子.创建(0,0,i,nil),
        }
        self.集字类型[5][1]:置物品({名称="梦",数量=self.数据.卡片.梦})
        self.集字类型[5][2]:置物品({名称="幻",数量=self.数据.卡片.幻})
        self.集字类型[6]={
             [1]=tp._物品格子.创建(0,0,i,nil),
             [2]=tp._物品格子.创建(0,0,i,nil),
        }
        self.集字类型[6][1]:置物品({名称="西",数量=self.数据.卡片.西})
        self.集字类型[6][2]:置物品({名称="游",数量=self.数据.卡片.游})
        self.集字类型[7]={
             [1]=tp._物品格子.创建(0,0,i,nil),
             [2]=tp._物品格子.创建(0,0,i,nil),
             [3]=tp._物品格子.创建(0,0,i,nil),
             [4]=tp._物品格子.创建(0,0,i,nil),
        }
        self.集字类型[7][1]:置物品({名称="梦",数量=self.数据.卡片.梦})
        self.集字类型[7][2]:置物品({名称="幻",数量=self.数据.卡片.幻})
        self.集字类型[7][3]:置物品({名称="西",数量=self.数据.卡片.西})
        self.集字类型[7][4]:置物品({名称="游",数量=self.数据.卡片.游})
        --
        self.集字奖励={}
        for n=1,5 do
            self.集字奖励[n]={[1]=tp._物品格子.创建(0,0,i,nil),}
        end
        self.集字奖励[1][1]:置物品({名称="银币礼包",数量=1})
        --self.集字奖励[1][1]:置物品({名称="高级内丹碎片",数量=1})
        self.集字奖励[2][1]:置物品({名称="高级内丹碎片",数量=1})
        self.集字奖励[3][1]:置物品({名称="特赦令牌",数量=1})
        self.集字奖励[4][1]:置物品({名称="玲珑宝图",数量=1})
        self.集字奖励[5][1]:置物品({名称="修炼果",数量=1})
        self.集字奖励[6]={[1]=tp._物品格子.创建(0,0,i,nil),[2]=tp._物品格子.创建(0,0,i,nil)}
        self.集字奖励[7]={[1]=tp._物品格子.创建(0,0,i,nil)}

        self.集字奖励[6][1]:置物品({名称="神兜兜",数量=5})
        self.集字奖励[6][2]:置物品({名称="神兜兜",数量=5})

        self.集字奖励[7][1]:置物品({名称="灵兜兜",数量=10})
    end
    self.加载资源=1
end


function 成长之路:显示(dt,x,y)
    self.焦点 = false
    if self.加载资源 then
       self.资源组[1]:显示(self.x,self.y)
       tp.窗口标题背景_ :显示(self.x+10+self.资源组[1].宽度/2-100,self.y)
       tp.字体表.华康字体:置颜色(0xFFFFFFFF):显示(self.x+140,self.y+0,self.类型)
       local xx,yy=0,0
       for n=1,table.maxn(self.类型组) do
          xx=xx+1
          if xx>4 then
             xx=1
             yy=yy+1
          end
          self.类型组[n]:更新(x,y,self.类型~=self.类型组[n]:取文字())
          self.类型组[n]:显示(self.x+13+xx*85-85,self.y+25+yy*25)
          if self.类型组[n]:事件判断() then
             if n==1 then
                客户端:发送数据(1,275,13,1,1)
             elseif n==2 then
                --客户端:发送数据(1,274,13,"召唤兽")
             elseif n==3 then
                客户端:发送数据(1,275,13,1,1)
             else
                self:资源加载({类型="CDK兑换"})
             end
          end
       end
       if self.类型=="全民集字" then
          self:全民集字(dt,x,y)
       elseif self.类型=="CDK兑换" then
          self:CDK兑换(dt,x,y)
       elseif self.类型=="全民集卡" then
          self:全民集字(dt,x,y)

       end
    end
end

function 成长之路:全民集字(dt,x,y)
   self.加入 = self.加入-引擎.取鼠标滚轮()
   if self.加入>3 then
      self.加入=3
   elseif self.加入<0 then
      self.加入=0
   end
   self.资源组[9]:更新(dt)
   self.资源组[10]:更新(dt)
   for n=1,4 do
       self.资源组[2]:显示(self.x+6,self.y+55+n*86-86)
       self.资源组[3]:显示(self.x+11,self.y+60+n*86-86)
       local 排列=n+self.加入
       for k=1,table.maxn(self.集字类型[排列]) do
           if self.集字类型[排列][k] and self.集字类型[排列][k].物品 then
              self.资源组[4]:显示(self.x+16+k*55-55,self.y+68+n*86-86)
              self.集字类型[排列][k]:置坐标(self.x+17+k*55-55,self.y+66+n*86-86)
              self.集字类型[排列][k]:显示(dt,x,y,self.鼠标)
              self.资源组[10]:显示(self.x+40+k*55-55,self.y+93+n*86-86)
              if self.集字类型[排列][k].焦点 and not tp.消息栏焦点 then
                 tp.提示:道具行囊(x,y,self.集字类型[排列][k].物品)
              end
           end
       end
       for k=1,table.maxn(self.集字奖励[排列]) do
           if table.maxn(self.集字奖励[排列])==1 then
              self.资源组[4]:显示(self.x+286,self.y+68+n*86-86)
              self.集字奖励[排列][k]:置坐标(self.x+287,self.y+66+n*86-86)
              self.集字奖励[排列][k]:显示(dt,x,y,self.鼠标)
              self.资源组[9]:显示(self.x+310,self.y+93+n*86-86)
           else
              self.资源组[4]:显示(self.x+231+k*55-55,self.y+68+n*86-86)
              self.集字奖励[排列][k]:置坐标(self.x+232+k*55-55,self.y+66+n*86-86)
              self.集字奖励[排列][k]:显示(dt,x,y,self.鼠标)
              self.资源组[9]:显示(self.x+255+k*55-55,self.y+93+n*86-86)
           end
           if self.集字奖励[排列][k].焦点 and not tp.消息栏焦点 and self.集字奖励[排列][k].物品 then
              tp.提示:道具行囊(x,y,self.集字奖励[排列][k].物品)
           end
       end
   end
   for n=5,8 do
       self.资源组[n]:更新(x,y)
       if self.资源组[n]:事件判断() then
          客户端:发送数据(1,276,13,n-4+self.加入,1)
       end
   end
   local 附加x=0
   if self.加入>=3 then
      附加x=82
   end
   self.资源组[5]:显示(self.x+155,self.y+83)
   self.资源组[6]:显示(self.x+155,self.y+169)
   self.资源组[7]:显示(self.x+155,self.y+255)
   self.资源组[8]:显示(self.x+155+附加x,self.y+341)
   tp.字体表.华康字体:置颜色(0xFFFFEBCD):显示(self.x+15,self.y+400,"点击本页面任意地方鼠标上下滚动即可查看更多兑换")
end

function 成长之路:每日充值(dt,x,y) --332 -10 -10
    local 阶梯,阶梯2=math.modf(table.maxn(self.物品)/5)
    if 阶梯2~=0  then
       阶梯=阶梯+1
    end
    if 阶梯==0 then
       阶梯=1
    end
    local 附加y=(阶梯*50+(阶梯-1)*8+12)-30
    self.资源组[1]:置宽高(352,145+附加y)
    if self.类型=="每日充值" then
       颜色=0xFFFF3333
    else
       颜色=0xFFFFCC00
    end
    引擎.画矩形(self.x+10,self.y+50,self.x+342,self.y+135+附加y,颜色)
    if self.类型=="每日充值" then
       颜色=0xFFFFCC00
    else
       颜色=0xFFFF3333
    end
    引擎.画线(self.x+10,self.y+50,self.x+341,self.y+50,颜色)
    引擎.画线(self.x+341,self.y+50,self.x+341,self.y+134+附加y,颜色)
    引擎.画线(self.x+10,self.y+50,self.x+10,self.y+134+附加y,颜色)
    引擎.画线(self.x+10,self.y+134+附加y,self.x+341,self.y+134+附加y,颜色)
    --
    引擎.画线(self.x+30,self.y+76,self.x+322,self.y+76,0xFF999999)
    tp.字体表.华康字体_:置颜色(颜色):显示(self.x+12,self.y+55,self.提示)
    引擎.画线(self.x+30,self.y+76+(阶梯*50+(阶梯-1)*8+12),self.x+322,self.y+76+(阶梯*50+(阶梯-1)*8+12),0xFF999999)
    --
    self.资源组[3]:更新(dt)
    local xx=0
    local yy=0
    for n=1,table.maxn(self.物品) do
        xx=xx+1
        if xx>5 then
           xx=1
           yy=yy+1
        end
        self.资源组[2]:显示(self.x+31+xx*58-58,self.y+82+yy*58)
        self.物品[n]:置坐标(self.x+31+xx*58-58,self.y+79+yy*58)
        self.物品[n]:显示(dt,x,y,self.鼠标)
        if  self.物品[n].焦点 and not tp.消息栏焦点 and self.物品[n].物品 then
            tp.提示:道具行囊(x,y,self.物品[n].物品)
        else
            self.资源组[3]:显示(self.x+26+xx*58-58,self.y+78+yy*58)
        end
    end
    if self.数据.领取==2 then
       self.资源组[4]:更新(x,y)
       self.资源组[4]:显示(self.x+260,self.y+80+(阶梯*50+(阶梯-1)*8+12))
       if self.资源组[4]:事件判断() then
          self:资源加载()
       end
    else
       self.资源组[5]:更新(x,y)
       self.资源组[5]:显示(self.x+260,self.y+80+(阶梯*50+(阶梯-1)*8+12))
       if self.资源组[5]:事件判断() then
          if self.类型=="全民集卡" then
             self:全民集字(dt,x,y)

          end
       end
    end
end

function 成长之路:CDK兑换(dt,x,y)
    self.资源组[2]:更新(x,y)
    self.资源组[3]:更新(x,y)
    if self.资源组[2]:事件判断() then

       客户端:发送数据(1, 1, 100,self.输入框:取文本(),1)
       self.输入框:置文本("")
    elseif self.资源组[3]:事件判断() then
       引擎.运行("https://www.baidu.com/?tn=85070231_5_hao_pg")
    end
    self.资源组[2]:显示(self.x+207,self.y+60,true,1)
    self.资源组[3]:显示(self.x+277,self.y+60,true,1)
    tp.字体表.华康字体:显示(self.x+10,self.y+62,"CDK：")
    self.资源组[4]:显示(self.x+45,self.y+60)
    self.控件类:更新(dt,x,y)
    if self.输入框._已碰撞 then
       self.焦点 = true
    end
    self.输入框:置坐标(self.x-43,self.y+20)
    self.控件类:显示(x,y)
end
function 成长之路:打开(数据)
    if self.可视 then
        self.可视 = false
        if self.输入框 then
           self.输入框:置焦点(false)
           self.输入框:置可视(false,false)
        end
    else
        self:资源加载(数据)
        table.insert(tp.窗口_,self)
        tp.运行时间 = tp.运行时间 + 1
        self.窗口时间 = tp.运行时间
        self.可视 = true
    end
end

return 成长之路